/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果数据库字段发生变化，请在代码生器重新生成此Model
 */
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SqlSugar;
using VOL.Entity.SystemModels;

namespace VOL.Entity.DomainModels
{
    [SugarTable("productinformationmodel", TableDescription = "货品信息")]
    [Entity(TableCnName = "货品信息",TableName = "productinformationmodel")]
    public partial class productinformationmodel:BaseEntity
    {
        /// <summary>
       ///主键
       /// </summary>
       [SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
       [Key]
       [Display(Name ="主键")]
       [Column(TypeName="bigint")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public long Id { get; set; }

       /// <summary>
       ///货品编号
       /// </summary>
       [Display(Name ="货品编号")]
       [Column(TypeName="nvarchar(max)")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public string goodsCode { get; set; }

       /// <summary>
       ///货品名称
       /// </summary>
       [Display(Name ="货品名称")]
       [Column(TypeName="nvarchar(max)")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public string goodsName { get; set; }

       /// <summary>
       ///状态
       /// </summary>
       [Display(Name ="状态")]
       [Column(TypeName="sbyte")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public sbyte status { get; set; }

       /// <summary>
       ///货品类型
       /// </summary>
       [Display(Name ="货品类型")]
       [Column(TypeName="int")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public int productTypeId { get; set; }

       /// <summary>
       ///规格型号
       /// </summary>
       [Display(Name ="规格型号")]
       [Column(TypeName="nvarchar(max)")]
       [Editable(true)]
       public string specModel { get; set; }

       /// <summary>
       ///供应商Id
       /// </summary>
       [Display(Name ="供应商Id")]
       [Column(TypeName="bigint")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public long supplierId { get; set; }

       /// <summary>
       ///客户名称Id
       /// </summary>
       [Display(Name ="客户名称Id")]
       [Column(TypeName="int")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public int userId { get; set; }

       /// <summary>
       ///入库参考价/元
       /// </summary>
       [Display(Name ="入库参考价/元")]
       [DisplayFormat(DataFormatString="50,2")]
       [Column(TypeName="decimal")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public decimal purchasePrice { get; set; }

       /// <summary>
       ///出库参考价/元
       /// </summary>
       [Display(Name ="出库参考价/元")]
       [DisplayFormat(DataFormatString="50,2")]
       [Column(TypeName="decimal")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public decimal salePrice { get; set; }

       /// <summary>
       ///显示顺序
       /// </summary>
       [Display(Name ="显示顺序")]
       [Column(TypeName="int")]
       [Editable(true)]
       public int? displayOrder { get; set; }

       /// <summary>
       ///当前库存
       /// </summary>
       [Display(Name ="当前库存")]
       [Column(TypeName="int")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public int currentInventory { get; set; }

       /// <summary>
       ///库存总金额
       /// </summary>
       [Display(Name ="库存总金额")]
       [DisplayFormat(DataFormatString="50,2")]
       [Column(TypeName="decimal")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public decimal totalInventoryamount { get; set; }

       /// <summary>
       ///保质期管理
       /// </summary>
       [Display(Name ="保质期管理")]
       [Column(TypeName="sbyte")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public sbyte shelfLifeManagement { get; set; }

       /// <summary>
       ///保质期时长（数值）
       /// </summary>
       [Display(Name ="保质期时长（数值）")]
       [Column(TypeName="int")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public int shelfLife { get; set; }

       /// <summary>
       ///保质期单位（天/月/年）
       /// </summary>
       [Display(Name ="保质期单位（天/月/年）")]
       [Column(TypeName="nvarchar(max)")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public string shelfLifeUnit { get; set; }

       /// <summary>
       ///预警天数(天)
       /// </summary>
       [Display(Name ="预警天数(天)")]
       [Column(TypeName="int")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public int warningDays { get; set; }

       /// <summary>
       ///备注
       /// </summary>
       [Display(Name ="备注")]
       [Column(TypeName="nvarchar(max)")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public string notes { get; set; }

       /// <summary>
       ///删除标识
       /// </summary>
       [Display(Name ="删除标识")]
       [Column(TypeName="sbyte")]
       [Editable(true)]
       [Required(AllowEmptyStrings=false)]
       public sbyte IsDel { get; set; }

       /// <summary>
       ///创建人
       /// </summary>
       [Display(Name ="创建人")]
       [MaxLength(15)]
       [Column(TypeName="nvarchar(15)")]
       [Editable(true)]
       public string Creator { get; set; }

       /// <summary>
       ///创建时间
       /// </summary>
       [Display(Name ="创建时间")]
       [Column(TypeName="datetime")]
       [Editable(true)]
       public DateTime? CreateDate { get; set; }

       /// <summary>
       ///修改人
       /// </summary>
       [Display(Name ="修改人")]
       [MaxLength(15)]
       [Column(TypeName="nvarchar(15)")]
       [Editable(true)]
       public string Modifier { get; set; }

       /// <summary>
       ///修改时间
       /// </summary>
       [Display(Name ="修改时间")]
       [Column(TypeName="datetime")]
       [Editable(true)]
       public DateTime? ModifyDate { get; set; }

       /// <summary>
       ///创建人id
       /// </summary>
       [Display(Name ="创建人id")]
       [Column(TypeName="int")]
       [Editable(true)]
       public int? CreateID { get; set; }

       /// <summary>
       ///修改人id
       /// </summary>
       [Display(Name ="修改人id")]
       [Column(TypeName="int")]
       [Editable(true)]
       public int? ModifyID { get; set; }

       /// <summary>
       ///单位外键
       /// </summary>
       [Display(Name ="单位外键")]
       [Column(TypeName="bigint")]
       [Editable(true)]
       public long? UnitId { get; set; }

       /// <summary>
       ///货品类型名称（关联查询字段，不存储到数据库）
       /// </summary>
       [Display(Name ="货品类型名称")]
       [SugarColumn(IsIgnore = true)]
       [NotMapped]
       public string typeName { get; set; }

       /// <summary>
       ///单位名称（关联查询字段，不存储到数据库）
       /// </summary>
       [Display(Name ="单位名称")]
       [SugarColumn(IsIgnore = true)]
       [NotMapped]
       public string UnitName { get; set; }

       
    }
}